package DesignPattern.Behavior.Template;

// 定义模板方法和基本方法
public abstract class AbstractClass {

    // 模板方法定义
    public final void process() {
        pourOil();
        heatOil();
        pourVegetable();
        pourSauce();
        fry();
    }

    // 基本方法
    public void pourOil() {
        System.out.println("倒油");
    }

    public void heatOil() {
        System.out.println("热油");
    }

    public void fry() {
        System.out.println("翻炒");
    }

    // 抽象方法
    public abstract void pourVegetable();

    public abstract void pourSauce();
}
